Havish M Consulting
Customer Case Study · HR · People Analytics & MIS
Power Transmission × Havish M Consulting

The monthly HR report that builds itself

The power transmission company's HR team spent two full days every month turning an employee master into a people MIS. HMC replaced the copy-paste with a VBA macro: pick the month, press Run, and the pivots, charts and checks are ready in under two hours, with no manual errors.

ClientPower Transmission FunctionHuman Resources ThemeVBA Report Automation
Monthly HR MIS turnaround
0hours
▼ from 2 full working days
Time saved every cycle
0%
▼ 16 hours down to 2
Manual errors in the published MIS
0per month
▼ from 6–8 corrections a month
HR hours freed each year
0hours
▲ redirected to strategic HR work

Figures indicative; validated metrics available on request.

The Challenge

Two days a month, rebuilding the same report

Every month HR exported the employee master, cleaned it, rebuilt a dozen pivots, recounted headcount, diversity, tenure and age, and redrew the charts for leadership. The steps never changed; only the month did.

Time drain

Building the monthly HR report by hand took two full days, so insight reached leaders late.

Error avalanche

Manual counts, filters and copy-paste put the integrity of vital HR data at risk every cycle.

Inefficiency overload

The laborious routine drained productivity and crowded out strategic HR initiatives.

Many cuts of one data

Geography, grade, gender, tenure, age and talent landscape all had to agree, and checking that by eye was slow.

HMC Approach

Record the routine once, then let VBA run it

Built inside the HR team's own workbook, so nothing new had to be installed or learned.

Select a step to see what happened.

Discover · Watch one cycle

We sat with the HR analyst through a full monthly build.

  • Logged every step, from the HRMS export to the final charts.
  • Found where time and errors came from: name fields, filters, recounts.
  • Listed every number leadership actually read.

Deliverable: Step map with time and error hotspots.

Design · One MIS sheet, one dashboard

The export lands in an MIS sheet; everything else is generated.

  • Month selector drives every count (joiners, leavers, tenure, age).
  • Fixed bands: tenure, age group and grade groups.
  • Built-in checks so the totals always reconcile.

Deliverable: Dashboard layout and band definitions.

Build · The FinalHM macro

A single macro rebuilds the report from scratch.

  • Concatenates names, deletes and recreates the PivotTable sheet.
  • Builds the pivot cache, pivots and charts in order.
  • Runs reconciliation checks and flags any mismatch.

Deliverable: Kamal Solution VBA.xlsm with modules and a RunMacro sheet.

Adopt · Paste, pick, run

The first live month ran side by side with the manual report.

  • Paste the export into MIS, choose the month, press Run.
  • Both versions matched; the manual one was retired.
  • A one-page guide on the RunMacro sheet.

Deliverable: Parallel-run sign-off and guide.

Scale · New cuts, same button

New views became additions to the macro, not extra hours.

  • Talent landscape by SBU and function.
  • Brazil and India views in one run.
  • Charts module separated so new visuals plug in.

Deliverable: Modular code: Mod_Final, Mod_FinalCharts, Mod_FinalSnippets.

The Solution

Paste the export, pick the month, press Run

First the workbook as built, then a working replica of the macro on synthetic data, then a race between the old and new way of building the report.

01 · The workbook, as built

MIS sheet, VBA project and the generated dashboard

Click any screen to enlarge it. Employee personal details in the MIS sheet are pixelated.

MIS sheet of the employee master with personal columns pixelated
MIS sheet. The employee master as exported: ID, username, salutation, gender, marital status, dates, blood group, phone, holding company and geography. Personal details pixelated.
VBA editor showing the FinalHM macro and project modules
The FinalHM macro. Selects MIS, concatenates names if needed, deletes and recreates the PivotTable sheet, then builds the pivot cache. Modules include Mod_Final, Mod_FinalCharts and Mod_FinalSnippets.
Generated HR dashboard with totals, grade, tenure and age groups, charts and talent landscape pivot
The generated dashboard, Aug-22. 422 employees (Brazil 57, India 365), 43 women, 10% diversity; grade split by gender; tenure and age groups (average age 37.96) with charts; and a talent landscape pivot by SBU and function.
02 · One-click MIS

Run the macro yourself

A replica of the workbook on a synthetic workforce shaped like the Aug-22 report. Choose a month and press Run: the steps execute, the dashboard builds, and the checks confirm every total reconciles.

Macro steps

    00:00simulated run time
    ' Kamal Solution VBA.xlsm · ready
    HR dashboard · —
    PivotTable sheet
    Dashboard not built yet

    Press Run FinalHM. The macro deletes the old PivotTable sheet and rebuilds everything from the MIS data.

    Grade × gender
    Headcount by grade group
    Tenure groups
    Share of headcount
    Age groups
    Share of headcount
    Talent landscape
    Headcount by SBU and function · colour = share of women · hover for detail

    Synthetic workforce for illustration: totals for Aug-22 follow the original dashboard; individuals, functions and other months are generated.

    03 · Manual vs macro

    Same report, two ways

    Both lanes build the same monthly MIS. Press Race: the manual lane works through a two-day routine and picks up errors on the way; the macro finishes in two hours with every check green.

    1 second ≈ 1 working hour
    ManualCopy, filter, recount
    — 
    FinalHM macroPaste, pick, run
    — 
    Impact Dashboard

    Two days back every month

    Report day used to swallow the start of every month. Now it is a morning task, and the numbers no longer need a second pair of eyes.

    An HR analyst's month

    Working days, coloured by time spent on the MIS

    Full day on the MISPart dayStrategic HR work

    Corrections after publishing

    Errors found in the monthly MIS, by section

    Figures indicative; validated metrics available on request.

    Before vs After

    How the monthly MIS gets made now

    DimensionBeforeAfter
    Time per report2 full working daysUnder 2 hours, mostly review
    Building pivotsA dozen pivots rebuilt by handMacro deletes and recreates them
    Month changeEvery filter and formula editedPick the month from one cell
    Accuracy6–8 corrections after publishingTotals reconcile automatically
    ChartsRedrawn and re-labelled monthlyGenerated by Mod_FinalCharts
    HR team's timeSpent assembling numbersSpent acting on them
    Tools & Tech Used

    Excel, made to do the work

    Excel VBA FinalHM and helper modules PivotTables generated from a fresh pivot cache Excel charts tenure and age groups HRMS export employee master into the MIS sheet Reconciliation checks every total ties back
    Key Takeaways

    What any HR team can borrow

    01

    If the steps repeat, record them

    A routine that is the same every month is a macro waiting to be written.

    02

    Rebuild, don't patch

    Deleting and recreating the pivots each run means no stale filters or leftovers from last month.

    03

    Put the checks in the code

    When totals reconcile automatically, review time goes into reading the numbers, not checking them.